#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>

typedef char BTData;

typedef struct BinaryTree
{
	BTData data;
	struct BinaryTree* left;
	struct BinaryTree* right;
}BTNode;


BTNode* BinaryTreeCreate( char* a,int n, int* i);

int BinaryTreeSize(BTNode* root);

int BinaryTreeLeafSzie(BTNode* root);

int BinaryTreeKLevelSize(BTNode* root, int k);

int BinaryTreeLevelSize(BTNode* root);

void BinaryTreePrevOrder(BTNode* root);

void BianryTreeInOrder(BTNode* root);

void BinaryTreePostOrder(BTNode* root);

void BinaryTreeNonR(BTNode* root);

BTNode* BinaryTreeFind(BTNode* root, BTData x);

void BinaryTreeDestory(BTNode* root);




